#include <Klein/Shader/Parameter.h>

Parameter::Parameter(const String& name, const IOType ioType, const DataType dataType, const String& rawValue) :
	mName(name),
	mIOType(ioType),
	mDataType(dataType),
	mRawValue(rawValue)
{
}

Parameter::Parameter(const Parameter& parameter) :
	mName(parameter.mName),
	mIOType(parameter.mIOType),
	mDataType(parameter.mDataType),
	mRawValue(parameter.mRawValue)
{
}

Parameter::~Parameter()
{
}

const String& Parameter::GetName() const
{
	return mName;
}

Parameter::IOType Parameter::GetIOType() const
{
	return mIOType;
}

Parameter::DataType Parameter::GetDataType() const
{
	return mDataType;
}

void Parameter::SetRawValue(const String& rawValue)
{
	mRawValue = rawValue;
}

const String& Parameter::GetRawValue() const
{
	return mRawValue;
}
